\documentclass{article}

\usepackage{unicode-math}
\setmainfont[Mapping=tex-text, Numbers=OldStyle]{TeX Gyre Pagella}
\setmathfont[math-style=ISO]{TeX Gyre Pagella Math}

\usepackage{siunitx}
\usepackage{xcolor}
\usepackage{booktabs,colortbl, array}
\usepackage{pgfplotstable}
\pgfplotsset{compat=1.8}

\definecolor{rulecolor}{RGB}{0,71,171}
\definecolor{tableheadcolor}{gray}{0.92}
% Following is taken from Werner: http://tex.stackexchange.com/a/33761/3061
% and modified for my needs
%
% Command \topline consists of a (slightly modified)
% \toprule followed by a \heavyrule rule of colour tableheadcolor
% (hence, 2 separate rules)
\newcommand{\topline}{ %
	\arrayrulecolor{rulecolor}\specialrule{0.1em}{\abovetopsep}{0pt}%
	\arrayrulecolor{tableheadcolor}\specialrule{\belowrulesep}{0pt}{0pt}%
	\arrayrulecolor{rulecolor}}
% Command \midline consists of 3 rules (top colour tableheadcolor, middle colour black, bottom colour white)
\newcommand{\midtopline}{ %
	\arrayrulecolor{tableheadcolor}\specialrule{\aboverulesep}{0pt}{0pt}%
	\arrayrulecolor{rulecolor}\specialrule{\lightrulewidth}{0pt}{0pt}%
	\arrayrulecolor{white}\specialrule{\belowrulesep}{0pt}{0pt}%
	\arrayrulecolor{rulecolor}}
% Command \bottomline consists of 2 rules (top colour
\newcommand{\bottomline}{ %
	\arrayrulecolor{white}\specialrule{\aboverulesep}{0pt}{0pt}%
	\arrayrulecolor{rulecolor} %
	\specialrule{\heavyrulewidth}{0pt}{\belowbottomsep}}%

\newcommand{\midheader}[2]{%
	\midrule\topmidheader{#1}{#2}}
\newcommand\topmidheader[2]{\multicolumn{#1}{c}{\textsc{#2}}\\%
	\addlinespace[0.5ex]}

\pgfplotstableset{normal/.style ={%
			header=true,
			string type,
			font=\addfontfeature{Numbers={Monospaced}}\small,
			column type=l,
			every odd row/.style={
					before row=
				},
			every head row/.style={
					before row={\topline\rowcolor{tableheadcolor}},
					after row={\midtopline}
				},
			every last row/.style={
					after row=\bottomline
				},
			col sep=&,
			row sep=\       }
}

\begin{document}
\begin{table}
	\centering
	\caption{The bandgab of some semiconductors.}
	\pgfplotstabletypeset[normal,
		columns/eg/.style={
				column name={$E_{\textup{g}}$ (\si{\electronvolt})},
				dec sep align
			}
	]{ %
		Material        & Symbol &  eg  & Type \            \topmidheader{5}{Elements}
		diamond         & C      & 5.46 & i \           silicon         & Si     & 1.12 & i \           germanium       & Ge     & 0.67 & i \           selenium        & Se     & 1.74 & d \           \midheader{5}{IV-IV Compounds}
		silicon carbide & SiC 3C & 2.36 & i \           silicon carbide & SiC 4H & 3.28 & i \           silicon carbide & SiC 6H & 3.03 & i \           \midheader{5}{III-V Compounds}
		indium phosphide& InP    & 1.27 & d \           indium arsenide & InAs   & 0.355& d \           gallium nitride & GaN    & 3.37 & d \           gallium arsenide& GaAs   & 1.42 & d \           aluminium nitride & AlN  & 6.2  & d \           }
\end{table}
\end{document}
